#pragma once

#include "BaseTypes.h"

#ifdef SELECTPOS_EXPORTS
#define SELECTPOS_API extern "C" __declspec(dllexport)
#else
#define SELECTPOS_API extern "C" __declspec(dllimport)
#endif

struct Pos
{
	int SamplePos;
	int DatasetPos;
};

SELECTPOS_API struct Pos TSPSelectPos(int w, int nSampleNum, WORD * sampleH, WORD * sampleL, unsigned long * pSampleConveyer, int nDatasetNum, WORD * DatasetH, WORD * DatasetL, unsigned long * pDatasetConveyer);
typedef struct Pos (*pfn_TSPSelectPos)(int w, int nSampleNum, WORD * sampleH, WORD * sampleL, unsigned long * pSampleConveyer, int nDatasetNum, WORD * DatasetH, WORD * DatasetL, unsigned long * pDatasetConveyer);

SELECTPOS_API struct Pos DRSelectPos(int h, int nSampleNum, xray_pixel * sample, unsigned long * pSampleConveyer, int nDatasetNum, xray_pixel * dataset, unsigned long * pDatasetConveyer);
typedef struct Pos (*pfn_DRSelectPos)(int h, int nSampleNum, xray_pixel * sample, unsigned long * pSampleConveyer, int nDatasetNum, xray_pixel * dataset, unsigned long * pDatasetConveyer);
